import request from '@/config/axios'

// 跨境电商客户地址 VO
export interface OrderCustomerAddressVO {
  id: number // 地址编号
  customerId: number // 客户编号
  addressType: number // 地址类型（1收货地址 2账单地址 3退货地址）
  addressName: string // 地址名称
  firstName: string // 名
  lastName: string // 姓
  fullName: string // 全名
  company: string // 公司
  phone: string // 电话
  email: string // 邮箱
  countryCode: string // 国家代码
  countryName: string // 国家名称
  province: string // 省份
  city: string // 城市
  district: string // 区县
  addressLine1: string // 地址行1
  addressLine2: string // 地址行2
  postalCode: string // 邮政编码
  latitude: number // 纬度
  longitude: number // 经度
  isDefault: boolean // 是否默认地址
  isValidated: boolean // 是否已验证
  validationSource: string // 验证来源
  validationTime: Date // 验证时间
  useCount: number // 使用次数
  lastUseTime: Date // 最后使用时间
}

// 跨境电商客户地址 API
export const OrderCustomerAddressApi = {
  // 查询跨境电商客户地址分页
  getOrderCustomerAddressPage: async (params: any) => {
    return await request.get({ url: `/crossborder/order-customer-address/page`, params })
  },

  // 查询跨境电商客户地址详情
  getOrderCustomerAddress: async (id: number) => {
    return await request.get({ url: `/crossborder/order-customer-address/get?id=` + id })
  },

  // 新增跨境电商客户地址
  createOrderCustomerAddress: async (data: OrderCustomerAddressVO) => {
    return await request.post({ url: `/crossborder/order-customer-address/create`, data })
  },

  // 修改跨境电商客户地址
  updateOrderCustomerAddress: async (data: OrderCustomerAddressVO) => {
    return await request.put({ url: `/crossborder/order-customer-address/update`, data })
  },

  // 删除跨境电商客户地址
  deleteOrderCustomerAddress: async (id: number) => {
    return await request.delete({ url: `/crossborder/order-customer-address/delete?id=` + id })
  },

  // 导出跨境电商客户地址 Excel
  exportOrderCustomerAddress: async (params) => {
    return await request.download({ url: `/crossborder/order-customer-address/export-excel`, params })
  },
}